package com.pureut.order.domain.system.domain;

import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.annotation.JsonFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
import java.util.Date;

/**
 * @Description 成品信息实体类
 * @Param
 * @Date 22-11-24
 * @Author hl
 **/
public class MaterialFinished {

    /** id */
    private long materialId;

    /** 成品编码 */
    private String materialCode;

    /** 成品名称 */
    private String materialName;

    /** 成品规格 */
    private String materialSpec;

    /** 成品状态 */
    private int materialState;

    /** 成品类别 */
    private long materialType;

    /** 打样 */
    private int materialProofing;

    /** 委外 */
    private int materiaOutsourcing;

    /** 克重 */
    private double materialGheavy;

    /** 网型 */
    private int materialNet;

    /** 铺网类型 */
    private int materialNetType;

    /** 客户id */
    private long materialCustomerId;

    /** 保质期 */
    private int materialQuality;

    /** 原料配比 */
    private String materialRatio;

    /** 过期提醒 */
    private int materialOverdue;

    /** 复检日期 */
    private int materialInspection;

    /** 复检提醒 */
    private int materialReminder;

    /** 最小库存提醒 */
    private int materialMinSecurity;

    /** 单位 */
    private int materialUnit;

    /** 超发 */
    private int materialHair;

    /** 超收 */
    private int materialClosed;

    /** 供应商id */
    private long materialSuppliers;

    /** 创建人 */
    private String createBy;

    private JSONObject alarmCode;

    private String beginTime;

    private String endTime;

    public String getMaterialRatio() {
        return materialRatio;
    }

    public void setMaterialRatio(String materialRatio) {
        this.materialRatio = materialRatio;
    }

    public String getbeginTime() {
        return beginTime;
    }

    public void setbeginTime(String beginTime) {
        this.beginTime = beginTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public JSONObject getAlarmCode() {
        return alarmCode;
    }

    public void setAlarmCode(JSONObject alarmCode) {
        this.alarmCode = alarmCode;
    }

    public int getMaterialProofing() {
        return materialProofing;
    }

    public void setMaterialProofing(int materialProofing) {
        this.materialProofing = materialProofing;
    }

    public int getMateriaOutsourcing() {
        return materiaOutsourcing;
    }

    public void setMateriaOutsourcing(int materiaOutsourcing) {
        this.materiaOutsourcing = materiaOutsourcing;
    }

    public double getMaterialGheavy() {
        return materialGheavy;
    }

    public void setMaterialGheavy(double materialGheavy) {
        this.materialGheavy = materialGheavy;
    }

    public int getMaterialNet() {
        return materialNet;
    }

    public void setMaterialNet(int materialNet) {
        this.materialNet = materialNet;
    }

    public int getMaterialNetType() {
        return materialNetType;
    }

    public void setMaterialNetType(int materialNetType) {
        this.materialNetType = materialNetType;
    }

    public long getMaterialCustomerId() {
        return materialCustomerId;
    }

    public void setMaterialCustomerId(long materialCustomerId) {
        this.materialCustomerId = materialCustomerId;
    }

    public int getMaterialQuality() {
        return materialQuality;
    }

    public void setMaterialQuality(int materialQuality) {
        this.materialQuality = materialQuality;
    }

    public int getMaterialOverdue() {
        return materialOverdue;
    }

    public void setMaterialOverdue(int materialOverdue) {
        this.materialOverdue = materialOverdue;
    }

    public int getMaterialInspection() {
        return materialInspection;
    }

    public void setMaterialInspection(int materialInspection) {
        this.materialInspection = materialInspection;
    }

    public int getMaterialReminder() {
        return materialReminder;
    }

    public void setMaterialReminder(int materialReminder) {
        this.materialReminder = materialReminder;
    }

    public int getMaterialMinSecurity() {
        return materialMinSecurity;
    }

    public void setMaterialMinSecurity(int materialMinSecurity) {
        this.materialMinSecurity = materialMinSecurity;
    }

    public int getMaterialUnit() {
        return materialUnit;
    }

    public void setMaterialUnit(int materialUnit) {
        this.materialUnit = materialUnit;
    }

    public int getMaterialHair() {
        return materialHair;
    }

    public void setMaterialHair(int materialHair) {
        this.materialHair = materialHair;
    }

    public int getMaterialClosed() {
        return materialClosed;
    }

    public void setMaterialClosed(int materialClosed) {
        this.materialClosed = materialClosed;
    }

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    public long getMaterialId() {
        return materialId;
    }

    public void setMaterialId(long materialId) {
        this.materialId = materialId;
    }

    public String getMaterialCode() {
        return materialCode;
    }

    public void setMaterialCode(String materialCode) {
        this.materialCode = materialCode;
    }

    @NotBlank(message = "原料名称不能为空")
    @Size(min = 0, max = 50, message = "编码名称长度不能超过30个汉字")
    public String getMaterialName() {
        return materialName;
    }

    public void setMaterialName(String materialName) {
        this.materialName = materialName;
    }

    public String getMaterialSpec() {
        return materialSpec;
    }

    public void setMaterialSpec(String materialSpec) {
        this.materialSpec = materialSpec;
    }

    public int getMaterialState() {
        return materialState;
    }

    public void setMaterialState(int materialState) {
        this.materialState = materialState;
    }

    public long getMaterialType() {
        return materialType;
    }

    public void setMaterialType(long materialType) {
        this.materialType = materialType;
    }

    public long getMaterialSuppliers() {
        return materialSuppliers;
    }

    public void setMaterialSuppliers(long materialSuppliers) {
        this.materialSuppliers = materialSuppliers;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
}
